//#include <stdio.h>
//#define SIZE 4
//int main()
//{
//	int arr[SIZE][SIZE]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
//	int max,max_i,max_j,i,j;
//	max_i=max_j=0;
//	max=arr[0][0];
//	for(i=0;i<SIZE;i++)
//	{
//		for(j=0;j<SIZE;j++)
//		{
//			if(max<arr[i][j])
//			{
//				max=arr[i][j];
//				max_i=i;
//				max_j=j;
//			}
//		}
//	}
//	printf("%d %d",max_i+1,max_j+1);
//	return 0;
//}

//#include <stdio.h>
//#include <stdlib.h>
//#include <time.h>
//int main()
//{
//	int num[10],i=0,j=0,tmp;
//	srand((unsigned)time(NULL));
//	while(i<10)
//	{
//		tmp=10*rand()/RAND_MAX+1;
//		for(j=0;j<i;j++)
//		{
//			if(num[j]==tmp)
//				break;
//		}
//		if(i==j)
//		{
//			num[i++]=tmp;
//		}
//	}
//	for(i=0;i<10;i++)
//	{
//		printf("%d ",num[i]);
//	}
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//	int i,j;
//	int num[100]={1},k=0,l=0;
//	for(i=1;i<=40;i++)
//	{
//		for(j=0;j<=l;j++)
//		{
//			num[j]=num[j]*i+k;
//			k=num[j]/10;
//			num[j]%=10;
//		}	
//			while(k)
//			{
//				l++;
//				num[j++]=k%10;
//				k=k/10;
//			}
//			j=l;
//			printf("%d!=%d",i,num[j]);
//			for(--j;j>=0;j--)
//			{
//				printf("%d",num[j]);
//			}
//		
//		printf("\n");
//	}
//	return 0;
//}


#include <stdio.h>
#include <string.h>
int main()
{
	char s1[100],s2[100];
	int i,j=0,length;
	scanf("%s",s1);
	scanf("%d",&i);
	length=strlen(s1);
	for(i=length-i;i<=length;i++)
		s2[j++]=s1[i];
	printf("%s",s2);
	return 0;
	
	
	
	return 0;
}

